Static-analysis Assisted Dynamic Verification to Efficiently Handle Waitany Non-determinism

نویسندگان

  • Sarvani Vakkalanka
  • Grzegorz Szubzda
  • Anh Vo
  • Ganesh Gopalakrishnan
  • Robert M. Kirby
  • Rajeev Thakur
چکیده

We consider the problem of verifying MPI using MPI_Waitany (and related operations wait/test some/all). Such programs have a higher degree of non-determinism over which user-written test harnesses cannot exert adequate control. This makes conventional MPI program testing even more ineffective. Our previous work has demonstrated the advantages of an MPI-specific dynamic partial order reduction algorithm called POE in a tool called ISP in dramatically reducing the number of interleavings during formal dynamic verification. We show that POE can become ineffective when näıvely applied to MPI programs with MPI_Waitanys. As a novel solution, we employ static analysis in a supporting role to POE to determine the extent to which the out parameters of MPI_Waitany can affect subsequent control flow statements. This informs ISP’s scheduler to exert even more intelligent backtrack/replay control. Our results indicate that this combined use of static analysis and POE can lead to exponentially better overall verification time.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Static-Analysis Assisted Dynamic Verification of MPI Waitany Programs (Poster Abstract)

Overview: It is well known that the number of schedules (interleavings) of a concurrent program grows exponentially with the number of processes. Our previous work has demonstrated the advantages of an MPI-specific dynamic partial order reduction (DPOR, [5]) algorithm called POE in a tool called ISP [1,2,3] in dramatically reducing the number of interleavings during formal dynamic verification....

متن کامل

Symbolic Model Checking for Asynchronous Boolean Programs

Software model checking problems generally contain two different types of non-determinism: 1) non-deterministically chosen values; 2) the choice of interleaving among threads. Most modern software model checkers can handle only one source of non-determinism efficiently, but not both. This paper describes a SAT-based model checker for asynchronous Boolean programs that handles both sources effec...

متن کامل

Automatic Verification of Programs with Indirection

In the first part we prove the correctness of an existing verification algorithm, namely counterexample-driven abstraction refinement. To be able to state the correctness of the algorithm, we modify it such that it verifies programs that have a formal semantics. We use propositional dynamic logic and we give a denotational semantics and an equivalent structural operational semantics. Then we co...

متن کامل

Automatic Verification of Determinism for Structured Parallel Programs

We present a static analysis for automatically verifying determinism of structured parallel programs. The main idea is to leverage the structure of the program to reduce determinism verification to an independence property that can be proved using a simple sequential analysis. Given a task-parallel program, we identify program fragments that may execute in parallel and check that these fragment...

متن کامل

Dynamic Determinism Checking for Structured Parallelism

Determinism is a powerful property, making it much easier to design, implement, and debug parallel programs when it can be guaranteed. There has been much work on guaranteeing determinism of programs, both through dynamic and static approaches. The dynamic approaches tend to have high overheads, while the static approaches can be difficult for non-experts to understand and can require high prog...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2009